package acl

import (
	"gitee.com/mkwchecking/sr-admin/pkg/http/acl"
)

// 历史消息响应
type MessageItem struct {
	Content          MessageContent `json:"content"`
	ConversationType int            `json:"conversationType"`
	Created          int            `json:"created"` // 时间戳
	Direction        int            `json:"direction"`
	ErrorInfo        string         `json:"errorInfo"`
	Extra            string         `json:"extra"`
	MessageId        string         `json:"messageId"`
	MessageType      int            `json:"messageType"`
	Progress         int            `json:"progress"`
	SenderId         int            `json:"senderId"` // 发送者ID
	SentDatumTime    int            `json:"sentDatumTime"`
	Status           int            `json:"status"`
	TargetId         int            `json:"targetId"` // 接收者ID
	Updated          int            `json:"updated"`  // 时间戳
}

type MessageContent struct {
	Content     string      `json:"content"`
	Flag        int         `json:"flag"`
	ObjectName  string      `json:"objectName"`
	IsFull      bool        `json:"isFull"`
	OriginalUrl string      `json:"originalUrl,omitempty"` // 图片/ 原图url
	ThumbUrl    string      `json:"thumbUrl,omitempty"`
	VideoUrl    string      `json:"videoUrl,omitempty"`
	UserInfo    MessageUser `json:"userInfo"`
}

type MessageUser struct {
	Id          int    `json:"id"`
	Username    string `json:"username"`
	PortraitUrl string `json:"portraitUrl"`
}

type HistoryMessageFetchReq struct {
	Rid     string `json:"rid" form:"rid"`         // 房间ID
	Keyword string `json:"kw" form:"kw"`           // 关键词
	StartAt int    `json:"startAt" form:"startAt"` // 开始时间
	EndAt   int    `json:"endAt" form:"endAt"`     // 结束时间
	acl.PageReq
}
